/*
 * CAudioDecoder.h
 *
 *  Created on: 2018年5月21日
 *      Author: zhengboyuan
 */

#ifndef CAUDIODECODER_H_
#define CAUDIODECODER_H_

#include "MediaDecoder.h"

namespace av
{

class CAudioDecoder: public MediaDecoder
{
public:
	CAudioDecoder();
	virtual ~CAudioDecoder();

    virtual int open(const MediaFormat& fmt);

    virtual void close();

    virtual bool isOpen();

    virtual bool decode(AVPacketPtr& pkt, AVFramePtr& frame);

    virtual void flush();

protected:
    AVCodecContext*		m_codecCtx;

};


} /* namespace av */

#endif /* CAUDIODECODER_H_ */
